﻿var lrutas;
var lbuses;
var lasignaciones;

function CargarElementos() {
    infoBuses();
    infoRutas();
    CargarTablaAsignaciones()
}

function infoAsignacion() {
    var parametro = {};
    var DirSer = localStorage.getItem("DirSerUsu");
    var ruta = DirSer + "/Servicios/ServiciosJusTime.asmx/getAsignaciones";
    var respuesta = {};
    $.ajax({
        type: "GET",
        url: ruta,
        data: parametro,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        async: false,
        success: function (result) {
            respuesta = (typeof result.d) == 'string' ? eval('(' + result.d + ')') : result.d;            
        },
        error: function (jqXHR, status, error) {
            alert(error + "-" + jqXHR.responseText);
        }
    });
    return respuesta;
}

function infoRutas() {
    document.getElementById("tRutas").innerHTML = "";
    var parametro = {};
    var DirSer = localStorage.getItem("DirSerUsu");
    var ruta = DirSer + "/Servicios/ServiciosJusTime.asmx/getRutas";
    $.ajax({
        type: "GET",
        url: ruta,
        data: parametro,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function (result) {
        lrutas = (typeof result.d) == 'string' ? eval('(' + result.d + ')') : result.d;
            $.each(lrutas, function (index, item) {
                if (item.NomRuta != 'SIN RUTA') {
                    $("#tRutas").append("<li><button id='" + item.NomRuta + "' type='button' class='btn btn-link' onclick='ValorRuta(id)'>" + item.NomRuta + "</button></li>");
                    $("#t2Rutas").append("<li><button id='" + item.NomRuta + "' type='button' class='btn btn-link' onclick='FiltarPorRutas(id)'>" + item.NomRuta + "</button></li>");
                }
            });
        },
        error: function (jqXHR, status, error) {
            alert(error + "-" + jqXHR.responseText);
        }
    });
}

function infoBuses() {
    var parametro = {};
    document.getElementById("tBuses").innerHTML = "";
    var DirSer = localStorage.getItem("DirSerUsu");
    var ruta = DirSer + "/Servicios/ServiciosJusTime.asmx/ObtenerTodosBuses";
    $.ajax({
        type: "GET",
        url: ruta,
        data: parametro,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function (result) {
            lbuses = (typeof result.d) == 'string' ? eval('(' + result.d + ')') : result.d;
            $.each(lbuses, function (index, item) {
                $("#tBuses").append("<li><button id='" + item.Placa + "' class='btn btn-link' onclick='ValorBus(id)'>" + item.Placa + "</button></li>");
                $("#t2Buses").append("<li><button id='" + item.Placa + "' class='btn btn-link' onclick='FiltrarPorBuses(id)'>" + item.Placa + "</button></li>");
            });
        },
        error: function (jqXHR, status, error) {
        }
    });
}

function FiltarPorRutas(id) {
    $("#tAsignacion").html("");
    alert(id);
    $.each(lasignaciones, function (index, item) {
        if (id == item.NomRuta) {
            $("#tAsignacion").append("<tr><td><strong>" + item.Placa + "</strong></td><td><strong>" + item.Conductor + "</strong></td><td><strong>" + item.NomRuta + "</strong></td><td><strong>" + item.Fecha + "</strong></td></tr>");
        }
    });
}

function FiltrarPorBuses(id) {
    $("#tAsignacion").html("");
    $.each(lasignaciones, function (index, item) {
        if(id == item.Placa)
        {
            $("#tAsignacion").append("<tr><td><strong>" + item.Placa + "</strong></td><td><strong>" + item.Conductor + "</strong></td><td><strong>" + item.NomRuta + "</strong></td><td><strong>" + item.Fecha + "</strong></td></tr>");
        }
    });
}

function ValorBus(Placa) {
    $("#ttPlaca").val(Placa);
}

function ValorRuta(NomRuta) {
    $("#ttNomRuta").val(NomRuta);
}

function AsignarBusARuta() {
    var Placa1 = $("#ttPlaca").val();
    var NomRuta1 = $("#ttNomRuta").val();
    var Conductor1 = $("#ttConductor").val();
    var parametro = {
        Conductor: "'" + Conductor1 + "'",
        Placa: "'" + Placa1 + "'",
        NomRuta: "'" + NomRuta1 + "'"
    };
    var DirSer = localStorage.getItem("DirSerUsu");
    var ruta = DirSer + "/Servicios/ServiciosJusTime.asmx/AsignarBusARuta";
    $.ajax({
        type: "GET",
        url: ruta,
        data: parametro,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function (result) {
            CargarTablaAsignaciones()
            $("#ttPlaca").val("");
            $("#ttNomRuta").val("");
            $("#ttConductor").val("");
        },
        error: function (jqXHR, status, error) {
            alert(error + "-" + jqXHR.responseText);
        }
    });    
}

function CargarTablaAsignaciones() {
    var data = infoAsignacion();
    var source =
      {
          localdata: data,
          datafields:
          [
              { name: 'Placa', type: 'string' },
              { name: 'Conductor', type: 'string' },
              { name: 'NomRuta', type: 'string' },
              { name: 'Fecha', type: 'date' }
          ],
          datatype: "array"
      };
    var dataAdapter = new $.jqx.dataAdapter(source);
    $("#jqxgrid").jqxGrid(
    {
        width: 850,
        source: dataAdapter,
        showfilterrow: true,
        filterable: true,
        selectionmode: 'multiplecellsextended',
        columns: [
          { text: 'Placa', filtertype: 'textbox', datafield: 'Placa', columntype: 'textbox', width: 215 },
          { text: 'Conductor', filtertype: 'checkedlist', datafield: 'Conductor', width: 220 },
           { text: 'Fecha', filtertype: 'date', datafield: 'Fecha', cellsalign: 'right', width: 300, cellsformat: 'f' },
          { text: 'NomRuta', filtertype: 'checkedlist', datafield: 'NomRuta', cellsalign: 'right' }
        ]
    });
    $('#clearfilteringbutton').click(function () {
        $("#jqxgrid").jqxGrid('clearfilters');
    });
}